تاریخ : شنبه 17 تير 1391
نویسنده : hamidrezakhouri

دستور AND & OR :

از And و Or برای ترکيب شرط ها در دستور Where استفاده می شود .
گاهی اوقات اطلاعات مورد نياز ما در دستور Select دارای چندين شرط مختلف است . به طور مثال ما مشخصات دانشجويان ترم دوم رشته نرم افزار که معدل آنها بيش از 15 است را می خواهيم . در اين حالت بايستی هر يک از شرط های مسئله را به تنهايی تعريف کرده و سپس آنها را با هم ترکيب کنيم . برنامه به ارزيابی هر يک از شرط ها پرداخته ، سپس نتايج حاصله را با هم ترکيب کرده و خروجی را تعيين می کند . 
عملگر And برای اجرای دستور نياز دارد تا تمام شرط های تعيين شده برای آن درست باشد . در حالی که عمگر Or فقط نياز دارد که حداقل يکی از شرط های آن درست باشد . در جداول زير چگونگی برقراری نتيجه نهايی در هنگام استفاده از اين دو اوپراتور را مشاهده می کنيم :

در حالت 2 شرط :

OR
شرط 1 شرط 2 نتيجه
درست درست درست
درست غلط درست
غلط درست درست
غلط غلط غلط
AND
شرط 1 شرط 2 نتيجه
درست درست درست
درست غلط غلط
غلط درست غلط
غلط غلط غلط

چگونگی حالت های فوق را در مثال های زير بررسی می کنيم :

Student Table
Student ID Name Family Major City Grade
41252214 Ahmad Rezaee Hard Ware Tehran 18
10724113 Ehsan Amiri Soft Ware Karaj 14
10254861 Zahra Hosini Hard Ware Tehran 17
27365187 Sahar Ahmadi Soft Ware Bam 16
35654415 Hesam Razavi Soft Ware Tehran 19

مثال 1 : مشخصات دانشجويانی را از جدول Student ارائه دهيد که نمره آنها بيش از 15 و رشته تحصيلی آنها نرم افزار باشد :

مثال
Select * From Student
Where Major = 'Soft Ware' AND Grade > 15 ;
کد
Student ID Name Family Major City Grade
27365187 Sahar Ahmadi Soft Ware Bam 16
35654415 Hesam Razavi Soft Ware Tehran 19
خروجی

مثال 2 : مشخصات دانشجويانی را از جدول Student ارائه دهيد که نمره آنها بيش از 17 بوده يا رشته تحصيلی آنها نرم افزار باشد :

مثال
Select * From Student
where Major = 'Soft Ware' OR Grade > 17 ;
کد
Student ID Name Family Major City Grade
41252214 Ahmad Rezaee Hard Ware Tehran 18
35654415 Hesam Razavi Soft Ware Tehran 19
خروجی


نکته مهم : همچنين می توان با استفاده از عملگر پرانتز چندين شرط مختلف را به صورت دسته های مجزا تعريف کرده و سپس همه آنها را با هم ترکيب کرد . در اين حالت شرط های هر گروه ابتدا در داخل پرانتز با هم ترکيب شده ، سپس نتيجه حاصله به عنوان نتيجه نهايي آن گروه شرط به دستور Where ارسال می شود و درنهايت نتايج تمام گروه ها با هم ترکيب می شوند .
مثال مهم : از جدول Student مشخصات دانشجويانی را ارائه دهيد که نمره آنها 18 و رشته تحصيلی آنها سخت افزار بوده يا نمره آنها 16 و رشته تحصيلی شان نرم افزار باشد :

مثال
Select * From Student
Where ( ( Grade = 18 AND Major = 'Hard Ware' ) OR ( Garde = 16 AND Major = 'Soft Ware' ) ) " ;
کد
Student ID Name Family Major City Grade
41252214 Ahmad Rezaee Hard Ware Tehran 18
27365187 Sahar Ahmadi Soft Ware Bam 16
خروجی

|
امتیاز مطلب : 3
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
موضوعات مرتبط: دستور And & Or , ,

صفحه قبل 1 صفحه بعد

آخرین مطالب

/
از این که به وبلاگ من سر زدید خیلی خیلی ممنونم باتشکر حمیدرضاخوری